package net.maku.jw.service;

import net.maku.framework.common.utils.Result;
import net.maku.jw.entity.Course;
import net.maku.jw.entity.SysMember;

import java.io.IOException;
import java.util.List;

/**
 * 小程用户信息(SysMember)表服务接口
 *
 * @author makejava
 * @since 2024-04-05 14:15:35
 */
public interface SysMemberService {

    /**\
     * 绑定教务    判定是否绑定   绑定成功insert会员
     * @return
     */
    Result<SysMember> bingjw(SysMember member) throws Exception;





    /**\
     * 判定是否绑定  查询绑定的值
     */
    Integer selecBingtById(Long id);


    /**
     * 通过ID查询单条数据  是否存在该会员
     *
     * @param id 主键
     * @return 实例对象
     */
    SysMember selectById(Long id);

    /**
     * 分页查询
     *
     * @param start 查询起始位置
     * @param limit 查询条数
     * @return 对象列表
     */
    List<SysMember> selectPage(int start, int limit);

    /**
     * 查询全部
     *
     * @return 对象列表
     */
    List<SysMember> selectAll();

    /**
     * 通过实体作为筛选条件查询
     *
     * @param sysMember 实例对象
     * @return 对象列表
     */
    List<SysMember> selectList(SysMember sysMember, Integer start, Integer limit);

    /**
     * 新增数据
     *
     * @param sysMember 实例对象
     * @return 影响行数
     */
    int insert(SysMember sysMember);

    /**
     * 批量新增
     *
     * @param sysMembers 实例对象的集合
     * @return 影响行数
     */
    int batchInsert(List<SysMember> sysMembers);

    /**
     * 修改信息
     * 解绑（删除cache）
     * @param sysMember 实例对象
     * @return 修改
     */
    SysMember update(SysMember sysMember);

    /**
     * 删除会员
     *
     * @param id 主键
     * @return 影响行数
     */
    int deleteById(Long id);

    /**
     * 查询总数据数
     *
     * @return 数据总数
     */
    int count();

    Long selectLastId();


    List<Course> getStudentCourse(SysMember sysMember, int week,int flag,String team) throws IOException, Exception;
    List<Course> getStudentCourse(SysMember sysMember, String team) throws IOException, Exception;
}



